#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import sys

count = 0   #记录用户输入密码的次数
flag = 1    #标志位
lock = []   #黑名单列表，每次登录输入的用户会判读是否存在这个文件
username = input('please input your name:')
#如果判断黑名单文件不存在，创建空文件
if os.path.exists(r'blacklist'):
    pass
else:
    touch=open("blacklist","w+")
    touch.close()
#读取黑名单的内容
f = open('blacklist','r')
lock_file = f.readlines()
f.close()
#将黑名单文件内容作为列表元素追加到列表中
for i in lock_file:
    line = i.strip('\n')
    lock.append(line)

#若输入的用户名在黑名单中，如果在则给出提示信息：用户已经被锁定，请联系管理员。
if username in lock:
    print('用户%s已经被锁定，请联系管理员.' %username)
else:
#输入的用户名不在黑名单中，则提示用户输入密码信息
    while True:
        count += 1
        passwd = input("please input your password:")
        f = open('user_info','r')
        user_file = f.readlines()
        f.close()
        for i in user_file:
            user_pass = i.strip().split()
            #判断输入的用户名==user_pass[0] and 密码==user_pass[1],如果相等，则提示欢迎信息并退出循环，如果不相等则
            #结束本次循环
            if username == user_pass[0] and passwd == user_pass[1]:
                print('欢迎用户 %s 登录 !' %username)
                flag = True
                break
            else:
                continue
        if flag is True:
            break
        else:
            if username == user_pass[0] and count == 3:
                print('用户被锁定，请联系管理员')
                lock_file = open('blacklist','a')
                lock_file.write('%s\n' %username)
                lock_file.close()
                break
            else:
                print("用户不存在")
                break